package com.hjk.common.aop.annotation;

import com.hjk.common.aop.aspect.RetiesConstant;

import java.lang.annotation.*;

/**
 * @author huangjunkai
 * @version 1.0
 * @date 2020/6/2 16:05
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface Reties {
    /**
     * 重试次数,默认3次
     */
    int reties() default RetiesConstant.RETIES;

    /**
     * 第一次开始重试时间 默认10秒后
     */
    long initialInterval() default RetiesConstant.INITIAL_INTERVAL;

    /**
     * 应用于上一重试间隔的乘数,默认1,即第二次20秒后,第三次40秒
     */
    int multiplier() default RetiesConstant.MULTIPLIER;


}
